package cibertec.edu.pe.datos.negocio;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import cibertec.edu.pe.datos.dao.impl.UsuarioDaoImpl;
import cibertec.edu.pe.datos.entidades.Area;
import cibertec.edu.pe.datos.entidades.Usuario;

@Component
public class UsuarioNegocio {

    @Autowired
    UsuarioDaoImpl usuarioDAO;

    public List<Usuario> listarClientes() throws Exception {
        return usuarioDAO.listarClientes();
    }

    @Transactional
    public void guardarCliente(Usuario cliente) throws Exception {
        Integer maximo = usuarioDAO.maximoCodigo(); // puede ser nulo si no hay
                                                    // registros
        if (maximo == null) maximo = 0;
        cliente.setCodigoUsuario(maximo + 1); // asignar el sgte (dentro de la
                                              // transaccion)
        usuarioDAO.guardar(cliente);
    }

    public List<Area> listarAreas() throws Exception {
        return usuarioDAO.listarAreas();
    }

}
